/*
 * Copyright [2022] [https://www.xiaonuo.vip]
 *
 * Snowy采用APACHE LICENSE 2.0开源协议，您在使用过程中，需要注意以下几点：
 *
 * 1.请不要删除和修改根目录下的LICENSE文件。
 * 2.请不要删除和修改Snowy源码头部的版权声明。
 * 3.本项目代码可免费商业使用，商业使用请保留源码和相关描述文件的项目出处，作者声明等。
 * 4.分发源码时候，请注明软件出处 https://www.xiaonuo.vip
 * 5.不可二次分发开源参与同类竞品，如有想法可联系团队xiaonuobase@qq.com商议合作。
 * 6.若您的项目无法满足以上几点，需要更多功能代码，获取Snowy商业授权许可，请在官网购买授权，地址为 https://www.xiaonuo.vip
 */
package vip.xiaonuo.biz.modular.help.param;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import vip.xiaonuo.biz.modular.help.entity.BizHelpFamily;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 困难职工申请编辑参数
 *
 * @author 薛守立
 * @date  2024/08/22 08:47
 **/
@Getter
@Setter
public class BizHelpEditParam {

    /** 主键ID */
    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "id不能为空")
    private String id;

    /** 申请人姓名 */
    @Schema(description = "申请人姓名", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "userName不能为空")
    private String userName;

    /** 生日 */
    @Schema(description = "生日", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "birthday不能为空")
    private Date birthday;

    /** 健康情况 */
    @Schema(description = "健康情况", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "health不能为空")
    private String health;

    /** 身份证号 */
    @Schema(description = "身份证号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "idCard不能为空")
    private String idCard;

    /** 工作年限 */
    @Schema(description = "工作年限", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "workRange不能为空")
    private String workRange;

    /** 工作单位 */
    @Schema(description = "工作单位", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "workOrg不能为空")
    private String workOrg;

    /** 家庭住址 */
    @Schema(description = "家庭住址", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "address不能为空")
    private String address;

    /** 房屋类型 */
    @Schema(description = "房屋类型", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "houseType不能为空")
    private String houseType;

    /** 房屋面积 */
    @Schema(description = "房屋面积", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "houseArea不能为空")
    private BigDecimal houseArea;

    /** 联系电话 */
    @Schema(description = "联系电话", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "phone不能为空")
    private String phone;

    /** 工作职务 */
    @Schema(description = "工作职务", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "duites不能为空")
    private String duites;

    /** 自付金额 */
    @Schema(description = "自付金额", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "selfPay不能为空")
    private BigDecimal selfPay;

    /** 家庭人口 */
    @Schema(description = "家庭人口", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "familyNum不能为空")
    private String familyNum;

    /** 本人平均月收入（元/人） */
    @Schema(description = "本人平均月收入（元/人）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "averageIncome不能为空")
    private BigDecimal averageIncome;

    /** 家庭总收入（元） */
    @Schema(description = "家庭总收入（元）", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "totalIncome不能为空")
    private BigDecimal totalIncome;

    /** 家庭平均收入 */
    @Schema(description = "家庭平均收入", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "familyAverageIncome不能为空")
    private BigDecimal familyAverageIncome;

    /** 致困原因 */
    @Schema(description = "致困原因")
    private String helpConten;


    /** 家庭成员信息*/
    private List<BizHelpFamily> bizHelpFamilyList;

}